package cn.com.w.bootdemo.config;

import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;


/**
 * 实现在应用启动后，去执行相关代码逻辑，且只会执行一次；
 * spring batch批量处理框架依赖这些执行器去触发执行任务；
 * 我们可以在run()方法里使用任何依赖，因为它们已经初始化好了；
 *
 * 可以配置多个启动后配置实例，通过@Order注解配置执行顺序。
 *
 * 注意CommandLineRunner接口可以和主启动类配合使用
 * @SpringBootApplication
 * public class BootApplication implements CommandLineRunner {}
 */
@Component
@Order(value = 0)
public class StartedConfigOrder0 implements CommandLineRunner {

    @Override
    public void run(String... args) throws Exception {
        try {
            System.out.println("application启动后配置：顺序0");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
